package main

import (
	"fmt"
	"io/ioutil"
	"net/http"
)

func alertHandler(w http.ResponseWriter, r *http.Request) {

	// var req interface{}
	body, err := ioutil.ReadAll(r.Body)
	if err != nil {
		fmt.Println(err)
		return
	}
	x, _ := processRequest(body)
	fmt.Printf("%v\n", x)
	// println(string(body))
	// err = json.Unmarshal(body, &req)
	// if err != nil {
	// 	fmt.Println(err)
	// 	return
	// }
	// // 整个请求报文转换为map断言
	// reqMap, ok := req.(map[string]interface{})
	// if !ok {
	// 	fmt.Fprintf(w, "reqMap转换map失败")
	// }
	// // 获取alerts，断言为切片接口 []interface{}
	// sliceAlerts, ok := reqMap["alerts"].([]interface{})
	// if !ok {
	// 	fmt.Fprintf(w, "sliceAlerts转换切片失败")
	// 	return
	// }
	// // 获取sliceAlerts第0号元素，断言map类型

	// mapAlerts, ok := sliceAlerts[0].(map[string]interface{})
	// if !ok {
	// 	fmt.Fprintf(w, "mapAlerts转换map失败")
	// 	return
	// }

	// // 获取Alerts.Labels，断言map类型
	// mapAlertsLables, ok := mapAlerts["labels"].(map[string]interface{})
	// if !ok {
	// 	fmt.Fprintf(w, "mapAlerts labels 转map失败")
	// 	return
	// }
	// // alerts.annotations 转map 断言
	// mapAlertsAnnotations, ok := mapAlerts["annotations"].(map[string]interface{})
	// if !ok {
	// 	fmt.Fprintf(w, "mapAlerts annotations 转map失败")
	// 	return
	// }
	// fmt.Printf("状态：%s\n", mapAlerts["status"])
	// fmt.Printf("主机IP：%s\n", mapAlertsLables["instance"])
	// fmt.Printf("开始时间：%s\n", mapAlerts["startsAt"])
	// fmt.Printf("结束时间：%s\n", mapAlerts["endsAt"])
	// fmt.Printf("简述：%s\n", mapAlertsAnnotations["summary"])
	// fmt.Printf("描述：%s\n", mapAlertsAnnotations["description"])
}
